package org.jeecg.common.constant;

import org.jeecg.common.util.DateUtils;
import org.jeecg.common.util.security.entity.SecurityResp;


import java.time.LocalDate;
import java.time.ZoneId;
import java.util.Date;

/**
 * @Description: 网络货运 通用常量
 * @author: jeecg-boot
 */
public interface WlhyBizConstant {

    /**
     * 角色
     * 公司	company
     * 司机	driver
     * 管理员	admin
     */
    String ROLE1 = "company";
    String ROLE2 = "driver";
    String ROLE3 = "admin";
    /**
     * 用户控制版本号
     */
    Date MAX_DATE = Date.from(LocalDate.of(9999, 9, 9).atStartOfDay(ZoneId.systemDefault()).toInstant());
    /**
     * 网关地址
     */
    String GATEWAY_HOST = "http://7ny94q.natappfree.cc";

    /**
     * 货币代码
     */
    String JEEPAY_CURRENCY = "CNY";
    /**
     * 订单过期时间
     */
    Integer JEEPAY_EXPIRE_TIME = 10; // min

    /**
     * 状态	row_status
     * 删除	0
     * 可用	1
     * 禁用	2
     * 回收站	3
     * 黑名单	4
     */
    String ROW_STATUS = "row_status";
    String ROW_STATUS0 = "0";
    String ROW_STATUS1 = "1";
    String ROW_STATUS2 = "2";
    String ROW_STATUS3 = "3";
    String ROW_STATUS4 = "4";

    /**
     * 企业认证状态	company_auth_status
     * 认证中	0
     * 待签约	1
     * 已认证	2
     */
    String COMPANY_AUTH_STATUS = "company_auth_status";
    String COMPANY_AUTH_STATUS0 = "0";
    String COMPANY_AUTH_STATUS1 = "1";
    String COMPANY_AUTH_STATUS2 = "2";

    /**
     * 运单状态	waybill_status
     * 待接单	1
     * 待装货	2
     * 待发车	3
     * 待签收	4
     * 待评价	5
     * 已完成	6
     * 已过期	7
     */
    String WAYBILL_STATUS = "waybill_status";
    String WAYBILL_STATUS1 = "1";
    String WAYBILL_STATUS2 = "2";
    String WAYBILL_STATUS3 = "3";
    String WAYBILL_STATUS4 = "4";
    String WAYBILL_STATUS5 = "5";
    String WAYBILL_STATUS6 = "6";
    String WAYBILL_STATUS7 = "7";
    /**
     * 单方类型	sides_type
     * 发货人	1
     * 收货人	2
     */
    String SIDES_TYPE = "sides_type";
    String SIDES_TYPE1 = "1";
    String SIDES_TYPE2 = "2";

    /**
     * 车辆状态	vehicle_status
     * 认证中	1
     * 驳回	2
     * 已认证	3
     */
    String VEHICLE_STATUS = "vehicle_status";
    String VEHICLE_STATUS1 = "1";
    String VEHICLE_STATUS2 = "2";
    String VEHICLE_STATUS3 = "3";


    /**
     * 运费计算方式	settle_freight_mode
     * 钱包	1
     * 银行卡	2
     */
    String SETTLE_FREIGHT_MODE = "settle_freight_mode";
    String SETTLE_FREIGHT_MODE1 = "1";
    String SETTLE_FREIGHT_MODE2 = "2";
    /**
     * 运费结算状态	settle_freight_status
     * 待结算	1
     * 已结算	2
     */
    String SETTLE_FREIGHT_STATUS = "settle_freight_status";
    String SETTLE_FREIGHT_STATUS1 = "1";
    String SETTLE_FREIGHT_STATUS2 = "2";

    /**
     * 收支业务类型	ie_biz_type
     * 钱包充值	1
     * 支付司机运费	2
     * 获取运费	3
     */
    String IE_BIZ_TYPE = "ie_biz_type";
    String IE_BIZ_TYPE1 = "1";
    String IE_BIZ_TYPE2 = "2";
    String IE_BIZ_TYPE3 = "3";

    /**
     * 收支类型	ie_type
     * 收入	1
     * 支出	2
     */
    String IE_TYPE = "ie_type";
    String IE_TYPE1 = "1";
    String IE_TYPE2 = "2";
/**
 * 订单签名类型	order_sign_type
 * MD5	MD5
 */
    /**
     * 订单业务	order_biz_type
     * 钱包充值	1
     */
    String ORDER_BIZ_TYPE = "order_biz_type";
    String ORDER_BIZ_TYPE1 = "1";
    /**
     * 订单状态	order_state
     * 订单生成	0
     * 支付中	1
     * 支付成功	2
     * 支付失败	3
     * 已撤销	4
     * 已退款	5
     * 订单关闭	6
     */
    String ORDER_STATE = "order_state";
    String ORDER_STATE0 = "0";
    String ORDER_STATE1 = "1";
    String ORDER_STATE2 = "2";
    String ORDER_STATE3 = "3";
    String ORDER_STATE4 = "4";
    String ORDER_STATE5 = "5";
    String ORDER_STATE6 = "6";
    /**
     * 支付方式	way_code
     * 聚合扫码(用户扫商家)	QR_CASHIER
     * 聚合条码(商家扫用户)	AUTO_BAR
     * 支付宝条码	ALI_BAR
     * 支付宝生活号	ALI_JSAPI
     * 支付宝APP	ALI_APP
     * 支付宝WAP	ALI_WAP
     * 支付宝PC网站	ALI_PC
     * 支付宝二维码	ALI_QR
     * 微信条码	WX_BAR
     * 微信公众号	WX_JSAPI
     * 微信小程序	WX_LITE
     * 微信APP	WX_APP
     * 微信H5	WX_H5
     * 微信扫码	WX_NATIVE
     * 云闪付条码	YSF_BAR
     * 云闪付jsapi	YSF_JSAPI
     */
    String WAY_CODE = "way_code";
    String WAY_CODE_ALI_PC = "ALI_PC";
    String WX_NATIVE = "WX_NATIVE";
    /**
     * 分账模式	division_mode
     * 该笔订单不允许分账[默认]	0
     * 支付成功按配置自动完成分账	1
     * 商户手动分账(解冻商户金额)	2
     */
    String DIVISION_MODE = "division_mode";
    String DIVISION_MODE0 = "0";
    String DIVISION_MODE1 = "1";
    String DIVISION_MODE2 = "2";

}
